package com.tgpms.web.system.dao;

import com.tgpms.util.PageView;
import com.tgpms.web.system.entity.SmDatasource;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author May
 *
 * 查询语句配置基本功能
 */
public interface SmDatasourceMapper {

    /**
     * 查询所有公司信息
     *
     * @return null
     */
    List<SmDatasource> queryAll(@Param("pageView") PageView pageView);
    /**
     * 删除操作
     *
     * @param dsCode
     * @return null
     */
    Integer deleteByExample(@Param("dsCode") String dsCode);

    /**
     * 插入
     *
     * @param record
     * @return null
     */
    Integer insert(SmDatasource record);

    /**
     * 根据DS_CODE查询
     *
     * @param dsCode
     * @return null
     */
    SmDatasource selectByDsCode(@Param("dsCode") String dsCode);

    /**
     * 更新操作
     *
     * @param record
     * @return null
     */
    Integer update(@Param("record") SmDatasource record);

    /**
     * 动态执行SQL
     *
     * @return
     */
    List<Map<String, String>> executionSql(@Param("map")Map<String, String> map);
    
    /**
     * 动态执行SQL
     *
     * @return
     */
    Integer executionSqlforUpdate(@Param("map")Map<String, String> map);

    /**
     * 分页执行SQL
     *
     * @param pageView
     * @return
     */
    List<Map<String, String>> querySqlAndPageView(@Param("pageView") PageView pageView);
}